/*!
 * \author Tianqi Chen: tqchen@apex.sjtu.edu.cn
 */
#define _CRT_SECURE_NO_WARNINGS
#define _CRT_SECURE_NO_DEPRECATE
#include "gfmf_ucut.h"
#include "gfmf_utree.h"

namespace apex_svd{
    ISVDTrainer *create_svd_trainer( SVDTypeParam mtype ){
        apex_utils::assert_true( mtype.format_type == svd_type::USER_GROUP_FORMAT, 
                                 "GFMF solver only support User Group Format" );
        // assign extend type 1 for UTree trainer
        if( mtype.extend_type == 1 ) return new gfmf::SVDMFUTreeTrainer( mtype );
        return new gfmf::SVDMFUCutTrainer( mtype );
    }
    ISVDRanker *create_svd_ranker( SVDTypeParam mtype ){
        return NULL;
    }
};
